package interfaceGrafica;

import java.awt.Color;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import javax.swing.JCheckBox;
import javax.swing.JOptionPane;
import logica.main.MainGrafico;
import logica.util.TipoDeCadastro;
import logica.util.Data;
import logica.util.TipoDeEntradaInvalida;
import logica.veiculo.Acessorio;
import logica.veiculo.Estado;
import logica.veiculo.Automovel;
import logica.veiculo.Combustivel;
import logica.veiculo.Cor;
import logica.veiculo.Potencia;
import logica.veiculo.Veiculo;
import persistencia.GeradorDeLogs;
import persistencia.MecanismoDePersistenciaSeguro;
import util.Constantes;



/**
 *
 * @author Localisa (Usa quem precisa!)
 */
@SuppressWarnings("serial")
public class InterfaceAutomovel extends javax.swing.JPanel {

	
    /**
	 * 
	 */
	List<Veiculo> automoveisLista;
    List<JCheckBox> listaDeAcessoriosDisponiveis;
    private Veiculo automovelAtual;
    private static MecanismoDePersistenciaSeguro mecanismoDePersistenciaAutomovel;
    private static GeradorDeLogs geradorDeLog;
    /** Creates new form CadastroEndereco */
    public InterfaceAutomovel() {
        	
    		lerDados();
        	initComponents();

            try {
                geradorDeLog = new GeradorDeLogs();
            } catch (Exception e) {
            }
            
            try {
				geradorDeLog.escreveLog("O usuario "+MainGrafico.getUsuarioLogado().getLogin()+" entrou na area de gereciamento de automoveis.");
			} catch (Exception e) {
				
			}
                        
            for (Potencia potencia : Potencia.values()) {
                jComboBox2.addItem(potencia);
            }

            for (Cor cor : Cor.values()) {
                jComboBox1.addItem(cor);
            }

            for (Combustivel combustivel : Combustivel.values()) {
                jComboBox3.addItem(combustivel);
            }

            for (Automovel.Porta porta : Automovel.Porta.values()) {
                jComboBox4.addItem(porta);
            }

            listaDeAcessoriosDisponiveis = new ArrayList<JCheckBox>();
            listaDeAcessoriosDisponiveis.add(jCheckBox1);
            listaDeAcessoriosDisponiveis.add(jCheckBox2);
            listaDeAcessoriosDisponiveis.add(jCheckBox3);
            listaDeAcessoriosDisponiveis.add(jCheckBox4);
            listaDeAcessoriosDisponiveis.add(jCheckBox5);
            listaDeAcessoriosDisponiveis.add(jCheckBox6);
            listaDeAcessoriosDisponiveis.add(jCheckBox7);
            listaDeAcessoriosDisponiveis.add(jCheckBox8);
            listaDeAcessoriosDisponiveis.add(jCheckBox9);
            listaDeAcessoriosDisponiveis.add(jCheckBox10);
            listaDeAcessoriosDisponiveis.add(jCheckBox11);
            listaDeAcessoriosDisponiveis.add(jCheckBox12);
            listaDeAcessoriosDisponiveis.add(jCheckBox14);
            listaDeAcessoriosDisponiveis.add(jCheckBox15);
            listaDeAcessoriosDisponiveis.add(jCheckBox16);
            listaDeAcessoriosDisponiveis.add(jCheckBox18);
            listaDeAcessoriosDisponiveis.add(jCheckBox19);


            for (Veiculo automovel : automoveisLista) {
            	if ( automovel instanceof Automovel ){
                    list1.add(automovel.getMarca() + " # " + automovel.getModelo() + " # " + automovel.getPlaca());
            	}
            	else{
            		automoveisLista.remove(automovel);
            	}
            }
            jButton5.setEnabled(false);
            jButton3.setEnabled(false);
        
    }

    public void limparCampos(){
        
        jTextField1.setText("");
        jTextField2.setText("");
        jTextField3.setText("");
        jTextField4.setText("");
        jTextField5.setText("");
        jTextField6.setText("");
        jTextField7.setText("");
        jTextField8.setText("");
        jTextField10.setText("");

        jLabel2.setForeground(Color.BLACK);
        jLabel3.setForeground(Color.BLACK);
        jLabel4.setForeground(Color.BLACK);
        jLabel5.setForeground(Color.BLACK);
        jLabel7.setForeground(Color.BLACK);
        jLabel10.setForeground(Color.BLACK);
        jLabel12.setForeground(Color.BLACK);
        jLabel13.setForeground(Color.BLACK);


        Iterator<JCheckBox> itListaDeAcessorios = listaDeAcessoriosDisponiveis.iterator();
        while (itListaDeAcessorios.hasNext()) {

            JCheckBox item = (JCheckBox) itListaDeAcessorios.next();
            item.setSelected(false);
        }
        
    }


    @SuppressWarnings("unchecked")
	private void lerDados(){
        try{
            mecanismoDePersistenciaAutomovel = new MecanismoDePersistenciaSeguro("arquivos/automoveis.ser");
            automoveisLista = (ArrayList) mecanismoDePersistenciaAutomovel.recuperaDoArquivo();
            
            if(automoveisLista == null){
            	automoveisLista = new ArrayList();
            }
           
        }catch(Exception e){
            JOptionPane.showMessageDialog(null, "Houve um problema no carregamento do banco de dados do Sistema.", null, JOptionPane.ERROR_MESSAGE);
            MainGrafico.entrarNaArea(MainGrafico.getMenuCorrente(), Constantes.INTERFACE_TAMANHO_MENU[0], Constantes.INTERFACE_TAMANHO_MENU[1]);
            MainGrafico.sairDaArea(this);
          
        }

    }

    @SuppressWarnings("unchecked")
	private void persistirDados(){

        try{
           geradorDeLog.escreveLog("Gravando dados");
           mecanismoDePersistenciaAutomovel.persisteNoArquivo((ArrayList) this.automoveisLista);
        }catch(Exception e){
        }

    }

    private boolean jaExisteVeiculoIgualNaLista(Veiculo umVeiculo) {
         for (Veiculo veiculo : automoveisLista) {
             if (veiculo.getRenavam().equals(umVeiculo.getRenavam()) || veiculo.getPlaca().equals(umVeiculo.getPlaca()) ) {
                 return true;
             }
         }
         return false;
     }

     private void cadastraAutomovel(Veiculo novoAutomovel, TipoDeCadastro tipoDeCadastro, String mensagemSucesso, String tituloSucesso, String mensagemFalha, String tituloFalha){

        jLabel2.setForeground(Color.BLACK);
        jLabel3.setForeground(Color.BLACK);
        jLabel4.setForeground(Color.BLACK);
        jLabel5.setForeground(Color.BLACK);
        jLabel7.setForeground(Color.BLACK);
        jLabel10.setForeground(Color.BLACK);
        jLabel12.setForeground(Color.BLACK);
        jLabel13.setForeground(Color.BLACK);

        List<TipoDeEntradaInvalida> entradasInvalidas = new ArrayList<TipoDeEntradaInvalida>();

        try {
            novoAutomovel.setRenavam(jTextField1.getText());
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.RENAVAM);
        }

        try {
            novoAutomovel.setMarca(jTextField2.getText());
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.MARCA);
        }

        try {
            novoAutomovel.setModelo(jTextField5.getText());
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.MODELO);
        }

        try {
            novoAutomovel.setPotencia(Integer.parseInt(jTextField6.getText()));
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.POTENCIA);
        }

        try {
            novoAutomovel.setPlaca(jTextField8.getText());
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.PLACA);
        }

        try {
            int dia = Integer.parseInt(jTextField3.getText().split("/")[0]);
            int mes = Integer.parseInt(jTextField3.getText().split("/")[1]);
            int ano = Integer.parseInt(jTextField3.getText().split("/")[2]);
            novoAutomovel.setDataDeAquisicao(new Data(dia, mes, ano));
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.DATA);
        }

        try {
            novoAutomovel.setAno(Integer.parseInt(jTextField4.getText()));
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.ANO);
        }

        try {
            novoAutomovel.setNivelDoTanque(Integer.parseInt(jTextField7.getText()));
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.NIVEL_DE_TANQUE);
        }

        try {
            novoAutomovel.setTipoDePotencia((Potencia)jComboBox2.getSelectedItem());
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.TIPO_DE_POTENCIA);
        }

        try {
            novoAutomovel.setCor((Cor)jComboBox1.getSelectedItem());
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.COR);
        }

        try {
            novoAutomovel.setTipoDeCombustivel((Combustivel)jComboBox3.getSelectedItem());
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.TIPO_DE_COMBUSTIVEL);
        }

        try {
            novoAutomovel.setPortas((Automovel.Porta)jComboBox4.getSelectedItem());
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.PORTAS);
        }

        try {
            List<Acessorio> acessorios = new ArrayList<Acessorio>();
            for (JCheckBox jcheckBox : listaDeAcessoriosDisponiveis) {
            	
                if (jcheckBox.isSelected()) {
                	acessorios.add(getAcessorioPelaDescricao(jcheckBox.getText()));
                }
            }
            novoAutomovel.setAcessorios(acessorios);
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.ACESSORIOS);
        }

        try {
            novoAutomovel.setEstado(Estado.DISPONIVEL);
        } catch (Exception e) {
            entradasInvalidas.add(TipoDeEntradaInvalida.ESTADO_VEICULO);
        }

        if ( entradasInvalidas.size() == 0 ){
            if (! jaExisteVeiculoIgualNaLista(novoAutomovel)) {
                automoveisLista.add(novoAutomovel);
                list1.add(novoAutomovel.getMarca() +" # "+ novoAutomovel.getModelo() + " # " + novoAutomovel.getPlaca());
                list1.select(list1.getItemCount()-1);
                JOptionPane.showMessageDialog(null, mensagemSucesso, tituloSucesso,JOptionPane.PLAIN_MESSAGE);
                limparCampos();
                jButton5.setEnabled(false);
                jButton3.setEnabled(false);
                list1.select(-1);
                jButton4.setEnabled(true);
            } else {
            	if ( tipoDeCadastro == TipoDeCadastro.EDICAO ){
                    list1.add(novoAutomovel.getMarca() +" # "+ novoAutomovel.getModelo() + " # " + novoAutomovel.getPlaca());
                    automoveisLista.add(novoAutomovel);
                    jButton5.setEnabled(false);
                    jButton3.setEnabled(false);
                    list1.select(-1);
                    jButton4.setEnabled(true);
            	}
                JOptionPane.showMessageDialog(null, "Nao deve haver RENAVAM ou Placa duplicados!", "Mensagem de Erro", JOptionPane.ERROR_MESSAGE);
                jButton5.setEnabled(false);
                jButton3.setEnabled(false);
                list1.select(-1);
                jButton4.setEnabled(true);
            }


        } else{
            if (tipoDeCadastro == TipoDeCadastro.EDICAO) {
                list1.add(novoAutomovel.getMarca() +" # "+ novoAutomovel.getModelo() + " # " + novoAutomovel.getPlaca());
                try {
					geradorDeLog.escreveLog("Registro do automovel de RENAVAM "+novoAutomovel.getRenavam()+" foi alterado");
				} catch (Exception e) {
					
				}
                jButton5.setEnabled(false);
                jButton3.setEnabled(false);
                list1.select(-1);
                jButton4.setEnabled(true);
            }
            JOptionPane.showMessageDialog(null, mensagemFalha, tituloFalha,JOptionPane.ERROR_MESSAGE);

            for ( TipoDeEntradaInvalida entradaInvalida : entradasInvalidas ){
                if ( entradaInvalida == TipoDeEntradaInvalida.RENAVAM ){
                    jLabel2.setForeground(Color.RED);
                    jTextField1.setText("XXXXXXXXX");
                } else if ( entradaInvalida == TipoDeEntradaInvalida.MARCA ){
                    jLabel3.setForeground(Color.RED);
                } else if ( entradaInvalida == TipoDeEntradaInvalida.MODELO ){
                    jLabel7.setForeground(Color.RED);
                } else if ( entradaInvalida == TipoDeEntradaInvalida.POTENCIA ){
                    jLabel10.setForeground(Color.RED);
                } else if ( entradaInvalida == TipoDeEntradaInvalida.PLACA ){
                    jLabel12.setForeground(Color.RED);
                    jTextField8.setText("LLLNNNN");
                } else if ( entradaInvalida == TipoDeEntradaInvalida.DATA ){
                    jLabel4.setForeground(Color.RED);
                    jTextField3.setText("DD/MM/AAAA");
                } else if ( entradaInvalida == TipoDeEntradaInvalida.ANO ){
                    jLabel5.setForeground(Color.RED);
                } else if ( entradaInvalida == TipoDeEntradaInvalida.NIVEL_DE_TANQUE ){
                    jLabel13.setForeground(Color.RED);
            }
        }
        }
        
        try {
			geradorDeLog.escreveLog("Cadastro do veiculo "+novoAutomovel.getModelo()+" de RENAVAM  "+novoAutomovel.getRenavam()+"realizado com sucesso.");
		} catch (Exception e) {
			
		}
		
     }

     private void selecionarAutomovel( ){
        limparCampos();
        String selecionado = list1.getItems()[list1.getSelectedIndex()];
        String PlacaDoAutomovel = selecionado.split(" # ")[2];
        for (Veiculo automovel : automoveisLista) {
            if (automovel.getPlaca().equals(PlacaDoAutomovel)) {
                automovelAtual = automovel;
                jButton5.setEnabled(true);
                jButton1.setEnabled(false);
                jButton3.setEnabled(true);
                jTextField1.setText(automovelAtual.getRenavam());
                jTextField2.setText(automovelAtual.getMarca());
                jTextField3.setText(automovelAtual.getDataDeAquisicao().getData());
                jTextField5.setText(automovelAtual.getModelo());
                jTextField6.setText(new Integer(automovelAtual.getPotencia()).toString());
                jTextField4.setText(new Integer(automovelAtual.getAno()).toString());
                jTextField8.setText(automovelAtual.getPlaca());
                jTextField7.setText(new Integer(automovelAtual.getNivelDoTanque()).toString());
                jComboBox1.setSelectedItem(automovelAtual.getCor());
                jComboBox2.setSelectedItem(automovelAtual.getTipoDePotencia());
                jComboBox3.setSelectedItem(automovelAtual.getTipoDeCombustivel());
                jComboBox4.setSelectedItem(automovelAtual.getPortas());

                for (JCheckBox jcheckBox : listaDeAcessoriosDisponiveis){
                	jcheckBox.setSelected(false);
                }
                for (JCheckBox jcheckBox : listaDeAcessoriosDisponiveis) {
                	for ( Acessorio acessorio : automovelAtual.getAcessorios() ){
                		if ( (jcheckBox.getText().toString()).equals(acessorio.getDescricao()) ){
                			jcheckBox.setSelected(true);
                			
                		}
                	}
                }
            }
            break;
        }
    }

     private Acessorio getAcessorioPelaDescricao(String descricao) {
        for (Acessorio acessorio : Acessorio.values()) {
            if (acessorio.getDescricao().equals(descricao)) {
                return acessorio;
            }
        }
        return null;
    }

   
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jLabel1 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jTextField1 = new javax.swing.JTextField();
        jLabel3 = new javax.swing.JLabel();
        jTextField2 = new javax.swing.JTextField();
        jLabel4 = new javax.swing.JLabel();
        jTextField3 = new javax.swing.JTextField();
        jLabel5 = new javax.swing.JLabel();
        jTextField4 = new javax.swing.JTextField();
        jLabel6 = new javax.swing.JLabel();
        jComboBox1 = new javax.swing.JComboBox();
        jLabel7 = new javax.swing.JLabel();
        jTextField5 = new javax.swing.JTextField();
        jLabel8 = new javax.swing.JLabel();
        jComboBox2 = new javax.swing.JComboBox();
        jLabel9 = new javax.swing.JLabel();
        jComboBox3 = new javax.swing.JComboBox();
        jLabel10 = new javax.swing.JLabel();
        jTextField6 = new javax.swing.JTextField();
        jTextField8 = new javax.swing.JTextField();
        jLabel12 = new javax.swing.JLabel();
        jSeparator1 = new javax.swing.JSeparator();
        jSeparator2 = new javax.swing.JSeparator();
        jLabel14 = new javax.swing.JLabel();
        jCheckBox1 = new javax.swing.JCheckBox();
        jCheckBox2 = new javax.swing.JCheckBox();
        jCheckBox3 = new javax.swing.JCheckBox();
        jCheckBox4 = new javax.swing.JCheckBox();
        jCheckBox5 = new javax.swing.JCheckBox();
        jCheckBox6 = new javax.swing.JCheckBox();
        jCheckBox7 = new javax.swing.JCheckBox();
        jCheckBox8 = new javax.swing.JCheckBox();
        jCheckBox9 = new javax.swing.JCheckBox();
        jCheckBox10 = new javax.swing.JCheckBox();
        jCheckBox11 = new javax.swing.JCheckBox();
        jCheckBox12 = new javax.swing.JCheckBox();
        jCheckBox16 = new javax.swing.JCheckBox();
        jCheckBox18 = new javax.swing.JCheckBox();
        jCheckBox14 = new javax.swing.JCheckBox();
        jCheckBox15 = new javax.swing.JCheckBox();
        jLabel15 = new javax.swing.JLabel();
        jLabel13 = new javax.swing.JLabel();
        jTextField7 = new javax.swing.JTextField();
        jLabel16 = new javax.swing.JLabel();
        jTextField10 = new javax.swing.JTextField();
        jButton1 = new javax.swing.JButton();
        jButton2 = new javax.swing.JButton();
        jSeparator3 = new javax.swing.JSeparator();
        jComboBox4 = new javax.swing.JComboBox();
        jCheckBox19 = new javax.swing.JCheckBox();
        jButton3 = new javax.swing.JButton();
        jButton4 = new javax.swing.JButton();
        jButton5 = new javax.swing.JButton();
        jButton6 = new javax.swing.JButton();
        scrollPane1 = new java.awt.ScrollPane();
        list1 = new java.awt.List();
        jSeparator4 = new javax.swing.JSeparator();
        jSeparator5 = new javax.swing.JSeparator();

        setPreferredSize(new java.awt.Dimension(800, 527));

        jLabel1.setFont(new java.awt.Font("DejaVu Sans", 1, 14));
        jLabel1.setText("Cadastro de Automovel");

        jLabel2.setText("RENAVAM:");

        jLabel3.setText("Marca:");

        jLabel4.setText("Data de Aquisicao:");

        jLabel5.setText("Ano:");

        jLabel6.setText("Cor:");

        jLabel7.setText("Modelo:");

        jLabel8.setText("Tipo de Potencia:");

        jLabel9.setText("Combustivel:");

        jLabel10.setText("Potencia:");

        jLabel12.setText("Placa:");

        jLabel14.setText("Acessorios");

        jCheckBox1.setText("Cambio Automatico");

        jCheckBox2.setText("Ar Condicionado");

        jCheckBox3.setText("Direcao Hidraulica");
        jCheckBox3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCheckBox3ActionPerformed(evt);
            }
        });

        jCheckBox4.setText("Trava Eletrica");

        jCheckBox5.setText("Vidro Eletrico");

        jCheckBox6.setText("Teto Solar");

        jCheckBox7.setText("Tracao 4x4");

        jCheckBox8.setText("DVD Player");

        jCheckBox9.setText("CD Player e Radio");

        jCheckBox10.setText("Freios ABS");

        jCheckBox11.setText("GPS");

        jCheckBox12.setText("Computador de Bordo");

        jCheckBox16.setText("Escapamento Duplo");

        jCheckBox18.setText("Limpador Traseiro");

        jCheckBox14.setText("Banco de Couro");

        jCheckBox15.setText("Air-Bag");

        jLabel15.setText("Qtd. de Portas:");

        jLabel13.setText("Nivel do Tanque:");

        jLabel16.setText("Consultar:");

        jTextField10.setText("Digite um nome...");

        jButton1.setText("OK");
        jButton1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton1ActionPerformed(evt);
            }
        });

        jButton2.setText("Limpar");
        jButton2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton2ActionPerformed(evt);
            }
        });

        jSeparator3.setOrientation(javax.swing.SwingConstants.VERTICAL);

        jCheckBox19.setText("Alarme");

        jButton3.setText("Excluir");
        jButton3.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton3ActionPerformed(evt);
            }
        });

        jButton4.setText("Cadastrar");
        jButton4.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton4ActionPerformed(evt);
            }
        });

        jButton5.setText("Salvar");
        jButton5.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton5ActionPerformed(evt);
            }
        });

        jButton6.setText("Voltar");
        jButton6.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jButton6ActionPerformed(evt);
            }
        });

        list1.addItemListener(new java.awt.event.ItemListener() {
            public void itemStateChanged(java.awt.event.ItemEvent evt) {
                list1ItemStateChanged(evt);
            }
        });
        scrollPane1.add(list1);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addComponent(jLabel1)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jSeparator4, javax.swing.GroupLayout.DEFAULT_SIZE, 603, Short.MAX_VALUE))
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, 225, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(12, 12, 12)
                        .addComponent(jLabel14)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jSeparator2, javax.swing.GroupLayout.PREFERRED_SIZE, 220, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel2)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel6)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel8)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jComboBox2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel10)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jTextField6, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel13)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jTextField7, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel4)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jTextField3, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE)))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel3)
                                .addGap(18, 18, 18)
                                .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel7)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jTextField5, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel15)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jComboBox4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel9)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jComboBox3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel5)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jTextField4, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel12)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jTextField8, javax.swing.GroupLayout.PREFERRED_SIZE, 141, javax.swing.GroupLayout.PREFERRED_SIZE))))
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jCheckBox2)
                            .addComponent(jCheckBox1)
                            .addComponent(jCheckBox3)
                            .addComponent(jCheckBox4)
                            .addComponent(jCheckBox5)
                            .addComponent(jCheckBox19))
                        .addGap(69, 69, 69)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jCheckBox9)
                            .addComponent(jCheckBox10)
                            .addComponent(jCheckBox8)
                            .addComponent(jCheckBox7)
                            .addComponent(jCheckBox6)
                            .addComponent(jCheckBox14))
                        .addGap(26, 26, 26)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jCheckBox18)
                            .addComponent(jCheckBox16)
                            .addComponent(jCheckBox15)
                            .addComponent(jCheckBox11)
                            .addComponent(jCheckBox12))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(jSeparator3, javax.swing.GroupLayout.PREFERRED_SIZE, 18, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addGroup(layout.createSequentialGroup()
                        .addComponent(jButton2, javax.swing.GroupLayout.PREFERRED_SIZE, 83, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(18, 18, 18)
                        .addComponent(jButton3, javax.swing.GroupLayout.PREFERRED_SIZE, 83, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(18, 18, 18)
                        .addComponent(jButton4, javax.swing.GroupLayout.PREFERRED_SIZE, 83, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(18, 18, 18)
                        .addComponent(jButton5, javax.swing.GroupLayout.PREFERRED_SIZE, 83, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(18, 18, 18)
                        .addComponent(jButton6, javax.swing.GroupLayout.PREFERRED_SIZE, 83, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jLabel16, javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(javax.swing.GroupLayout.Alignment.LEADING, layout.createSequentialGroup()
                        .addComponent(jTextField10, javax.swing.GroupLayout.PREFERRED_SIZE, 138, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jButton1))
                    .addComponent(scrollPane1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 187, Short.MAX_VALUE))
                .addContainerGap())
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jSeparator5, javax.swing.GroupLayout.DEFAULT_SIZE, 776, Short.MAX_VALUE)
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(jLabel1))
                    .addGroup(layout.createSequentialGroup()
                        .addGap(19, 19, 19)
                        .addComponent(jSeparator4, javax.swing.GroupLayout.PREFERRED_SIZE, 10, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createSequentialGroup()
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel2)
                                    .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel6)
                                    .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel8)
                                    .addComponent(jComboBox2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel10)
                                    .addComponent(jTextField6, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel4)
                                    .addComponent(jTextField3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel13)
                                    .addComponent(jTextField7, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                            .addGroup(layout.createSequentialGroup()
                                .addGap(2, 2, 2)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel3)
                                    .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel7)
                                    .addComponent(jTextField5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(jLabel9)
                                    .addComponent(jComboBox3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel12)
                                    .addComponent(jTextField8, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jLabel5)
                                    .addComponent(jTextField4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                    .addComponent(jComboBox4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jLabel15))))
                        .addGap(22, 22, 22)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(jSeparator1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel14)
                            .addComponent(jSeparator2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jCheckBox10)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox9)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox8)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox7)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox6)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox14))
                            .addGroup(layout.createSequentialGroup()
                                .addGap(8, 8, 8)
                                .addComponent(jCheckBox1)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox2)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox3)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox5)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox4)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox19))
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jCheckBox16)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox18)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox15)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox11)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBox12)))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 31, Short.MAX_VALUE)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jButton2)
                            .addComponent(jButton3)
                            .addComponent(jButton4)
                            .addComponent(jButton5)
                            .addComponent(jButton6)))
                    .addGroup(layout.createSequentialGroup()
                        .addGap(14, 14, 14)
                        .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(layout.createSequentialGroup()
                                .addComponent(jLabel16)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jTextField10, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                    .addComponent(jButton1))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(scrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 399, Short.MAX_VALUE))
                            .addComponent(jSeparator3, javax.swing.GroupLayout.DEFAULT_SIZE, 461, Short.MAX_VALUE))))
                .addGap(20, 20, 20)
                .addComponent(jSeparator5, javax.swing.GroupLayout.PREFERRED_SIZE, 10, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap())
        );
    }// </editor-fold>//GEN-END:initComponents

    private void jCheckBox3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCheckBox3ActionPerformed
      
    }//GEN-LAST:event_jCheckBox3ActionPerformed

    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton2ActionPerformed
        limparCampos();
        jButton5.setEnabled(false);
        jButton3.setEnabled(false);
        jButton4.setEnabled(true);

    }//GEN-LAST:event_jButton2ActionPerformed

    private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton3ActionPerformed
        limparCampos();
        if ( automovelAtual != null ){
            list1.remove(automovelAtual.getMarca()+" # "+automovelAtual.getModelo()+" # "+automovelAtual.getPlaca());
            automoveisLista.remove(automovelAtual);
            try {
    			geradorDeLog.escreveLog("Remocao do veiculo "+automovelAtual.getModelo()+" de RENAVAM  "+automovelAtual.getRenavam()+"realizado com sucesso.");
    		} catch (Exception e) {
    			
    		}
            automovelAtual = null;
            jButton3.setEnabled(false);
            jButton4.setEnabled(true);
            jButton5.setEnabled(false);
            JOptionPane.showMessageDialog(null, "Automovel excluido com sucesso!", "Automovel removido", JOptionPane.PLAIN_MESSAGE);
            persistirDados();
        }
        else{
            JOptionPane.showMessageDialog(null, "Voce deve selecionar um automovel para ser excluido!", "Automovel nao especificado", JOptionPane.ERROR_MESSAGE);
        }
    }//GEN-LAST:event_jButton3ActionPerformed

    private void jButton4ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton4ActionPerformed
        Veiculo novoAutomovel = new Automovel();
        cadastraAutomovel(novoAutomovel, TipoDeCadastro.NOVA_ENTRADA, "Cadastro efetuado com sucesso.", "Cadastro realizado", "O cadastro falhou. Os campos errados estao em destaque.", "Cadastro falhou");
        persistirDados();
        list1.select(-1);
        
    }//GEN-LAST:event_jButton4ActionPerformed

    private void jButton5ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton5ActionPerformed
        list1.remove(automovelAtual.getMarca()+" # "+automovelAtual.getModelo()+" # "+automovelAtual.getPlaca());
        automoveisLista.remove(automovelAtual);
        cadastraAutomovel(automovelAtual, TipoDeCadastro.EDICAO, "Edicao realizada com sucesso.", "Edicao realizada", "A edicao falhou. Verifique campos em destaque.", "Edicao nao realizada");
        persistirDados();
        jButton3.setEnabled(false);
        jButton4.setEnabled(true);
        jButton5.setEnabled(false);

    }//GEN-LAST:event_jButton5ActionPerformed

    private void jButton6ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton6ActionPerformed
        MainGrafico.entrarNaArea(MainGrafico.getMenuCorrente(), Constantes.INTERFACE_TAMANHO_MENU[0], Constantes.INTERFACE_TAMANHO_MENU[1]);
        MainGrafico.sairDaArea(this);
    }//GEN-LAST:event_jButton6ActionPerformed

    private void list1ItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_list1ItemStateChanged
        selecionarAutomovel();
        jButton3.setEnabled(true);
        jButton4.setEnabled(false);
        jButton5.setEnabled(true);
    }//GEN-LAST:event_list1ItemStateChanged

    private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jButton1ActionPerformed
        String parametroDeConsulta = jTextField10.getText();

        String[] consultados = list1.getItems();

        for ( int i=0; i<consultados.length; i++ ){
            if ( (consultados[i].toLowerCase()).
                    contains(parametroDeConsulta.toLowerCase()) ){
                list1.select(i);
                jTextField10.setText("");
                selecionarAutomovel();
                break;
            }
        }
    }//GEN-LAST:event_jButton1ActionPerformed


    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton jButton1;
    private javax.swing.JButton jButton2;
    private javax.swing.JButton jButton3;
    private javax.swing.JButton jButton4;
    private javax.swing.JButton jButton5;
    private javax.swing.JButton jButton6;
    private javax.swing.JCheckBox jCheckBox1;
    private javax.swing.JCheckBox jCheckBox10;
    private javax.swing.JCheckBox jCheckBox11;
    private javax.swing.JCheckBox jCheckBox12;
    private javax.swing.JCheckBox jCheckBox14;
    private javax.swing.JCheckBox jCheckBox15;
    private javax.swing.JCheckBox jCheckBox16;
    private javax.swing.JCheckBox jCheckBox18;
    private javax.swing.JCheckBox jCheckBox19;
    private javax.swing.JCheckBox jCheckBox2;
    private javax.swing.JCheckBox jCheckBox3;
    private javax.swing.JCheckBox jCheckBox4;
    private javax.swing.JCheckBox jCheckBox5;
    private javax.swing.JCheckBox jCheckBox6;
    private javax.swing.JCheckBox jCheckBox7;
    private javax.swing.JCheckBox jCheckBox8;
    private javax.swing.JCheckBox jCheckBox9;
    private javax.swing.JComboBox jComboBox1;
    private javax.swing.JComboBox jComboBox2;
    private javax.swing.JComboBox jComboBox3;
    private javax.swing.JComboBox jComboBox4;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel10;
    private javax.swing.JLabel jLabel12;
    private javax.swing.JLabel jLabel13;
    private javax.swing.JLabel jLabel14;
    private javax.swing.JLabel jLabel15;
    private javax.swing.JLabel jLabel16;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JLabel jLabel7;
    private javax.swing.JLabel jLabel8;
    private javax.swing.JLabel jLabel9;
    private javax.swing.JSeparator jSeparator1;
    private javax.swing.JSeparator jSeparator2;
    private javax.swing.JSeparator jSeparator3;
    private javax.swing.JSeparator jSeparator4;
    private javax.swing.JSeparator jSeparator5;
    private javax.swing.JTextField jTextField1;
    private javax.swing.JTextField jTextField10;
    private javax.swing.JTextField jTextField2;
    private javax.swing.JTextField jTextField3;
    private javax.swing.JTextField jTextField4;
    private javax.swing.JTextField jTextField5;
    private javax.swing.JTextField jTextField6;
    private javax.swing.JTextField jTextField7;
    private javax.swing.JTextField jTextField8;
    private java.awt.List list1;
    private java.awt.ScrollPane scrollPane1;
    // End of variables declaration//GEN-END:variables

}